/*
 * iShopPlace Project.
 */
package ishopplace.model.service;

import ishopplace.model.businessobject.Category;
import ishopplace.model.businessobject.Item;
import ishopplace.model.businessobject.Product;
import ishopplace.model.exception.iShopPlaceException;

import java.util.List;


/**
 * The catalog business service interface.
 * <p>
 * This service contains catalog management related business logic.
 * 
 * @author <a href="mailto:derek@derekshen.com">Derek Y. Shen</a>
 */
public interface CatalogService {
	public List getCategoryList() throws iShopPlaceException;
	public Category getCategory(String categoryId) throws iShopPlaceException;
	public List getProductListByCategory(String categoryId) throws iShopPlaceException;
	public Product getProduct(String productId) throws iShopPlaceException;
	public List getItemListByProduct(String productId) throws iShopPlaceException;
	public Item getItem(String itemId) throws iShopPlaceException;
	public List searchProductList(List keywords) throws iShopPlaceException;
}
